﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace LucyGrid.Messaging
{
	/// <summary>
	/// Gid node status notification
	/// </summary>
	public class NodeStatus
	{
		/// <summary>
		/// Node identifier
		/// </summary>
		public string NodeId { get; set; }

		/// <summary>
		/// Status
		/// </summary>
		public GridCommStatusEvent Status { get; set; }

		/// <summary>
		/// Current memory ussage
		/// </summary>
		public float Memory { get; set; }

		/// <summary>
		/// Current processor usage
		/// </summary>
		public float Processor { get; set; }

		/// <summary>
		/// Machine name
		/// </summary>
		public string MachineName { get; set; }

		/// <summary>
		/// Ip
		/// </summary>
		public string Ip { get; set; }

		/// <summary>
		/// Number of cores
		/// </summary>
		public int Cores { get; set; }

		/// <summary>
		/// List of grids
		/// </summary>
		public Dictionary<string, System.Diagnostics.Process>.KeyCollection Workers { get; set; }
	}
}
